package com.iotp.entity.menu;

import java.io.Serializable;
import java.util.List;

/**
 * 系统菜单实体类
 * @author Assassin
 */
public class Menu implements Serializable {

   /**
	* default SerialVersionUID
	*/
	private static final long serialVersionUID = 1L;

	// Fields

	private Long menuId;// 标识信息-菜单Id[主键值]
	private String menuCode;// 标识信息-菜单编码
	private Integer menuType;// 标识信息-菜单类型
	private Long orgId;// 标识信息-机构Id
	private Integer menuStatus;// 状态信息-菜单数据状态
	private Integer isDel;// 状态信息-是否删除[1-是 | 0-否]
	private Integer menuOrder;// 状态信息-菜单排序
	private Integer menuLevel;// 层级信息-菜单层级
	private Integer isParent;// 层级信息-是否父级[1-是 | 0-否]
	private Long menuPid;// 层级信息-父级Id[ROOT-0]
	private String menuName;// 基本信息-菜单名称
	private String aliasName;// 基本信息-菜单别名
	private String menuIcon;// 基本信息-菜单图标
	private String menuDesc;// 基本信息-菜单说明
	private String menuUrl;// 授权信息-菜单URL
	private String authPerms;// 授权信息-授权角色[ALL-全部]
	private Long createTime;// 时间信息-创建时间
	private Long updateTime;// 时间信息-更新时间[初始化=NULL]
	
	// Extends Field
	private List<Menu> subList;// 菜单子集列表
	
	// Empty Constructor
	public Menu() {
		super();
	}
	
	// Full Constructor
	public Menu(Long menuId, String menuCode, Integer menuType, Long orgId, Integer menuStatus, Integer isDel, Integer menuOrder, Integer menuLevel, Integer isParent, Long menuPid, String menuName, String aliasName, String menuIcon, String menuDesc, String menuUrl, String authPerms, Long createTime, Long updateTime) {
		this.menuId =  menuId;
		this.menuCode =  menuCode;
		this.menuType =  menuType;
		this.orgId =  orgId;
		this.menuStatus =  menuStatus;
		this.isDel =  isDel;
		this.menuOrder =  menuOrder;
		this.menuLevel =  menuLevel;
		this.isParent =  isParent;
		this.menuPid =  menuPid;
		this.menuName =  menuName;
		this.aliasName =  aliasName;
		this.menuIcon =  menuIcon;
		this.menuDesc =  menuDesc;
		this.menuUrl =  menuUrl;
		this.authPerms =  authPerms;
		this.createTime =  createTime;
		this.updateTime =  updateTime;
	}

	// Property accessors

	public Long getMenuId () {
		return this.menuId;
	}
	
	public void setMenuId (Long menuId) {
		this.menuId =  menuId;
	}
	
	public String getMenuCode () {
		return this.menuCode;
	}
	
	public void setMenuCode (String menuCode) {
		this.menuCode =  menuCode;
	}
	
	public Integer getMenuType () {
		return this.menuType;
	}
	
	public void setMenuType (Integer menuType) {
		this.menuType =  menuType;
	}
	
	public Long getOrgId () {
		return this.orgId;
	}
	
	public void setOrgId (Long orgId) {
		this.orgId =  orgId;
	}
	
	public Integer getMenuStatus () {
		return this.menuStatus;
	}
	
	public void setMenuStatus (Integer menuStatus) {
		this.menuStatus =  menuStatus;
	}
	
	public Integer getIsDel () {
		return this.isDel;
	}
	
	public void setIsDel (Integer isDel) {
		this.isDel =  isDel;
	}
	
	public Integer getMenuOrder () {
		return this.menuOrder;
	}
	
	public void setMenuOrder (Integer menuOrder) {
		this.menuOrder =  menuOrder;
	}
	
	public Integer getMenuLevel () {
		return this.menuLevel;
	}
	
	public void setMenuLevel (Integer menuLevel) {
		this.menuLevel =  menuLevel;
	}
	
	public Integer getIsParent () {
		return this.isParent;
	}
	
	public void setIsParent (Integer isParent) {
		this.isParent =  isParent;
	}
	
	public Long getMenuPid () {
		return this.menuPid;
	}
	
	public void setMenuPid (Long menuPid) {
		this.menuPid =  menuPid;
	}
	
	public String getMenuName () {
		return this.menuName;
	}
	
	public void setMenuName (String menuName) {
		this.menuName =  menuName;
	}
	
	public String getAliasName () {
		return this.aliasName;
	}
	
	public void setAliasName (String aliasName) {
		this.aliasName =  aliasName;
	}
	
	public String getMenuIcon () {
		return this.menuIcon;
	}
	
	public void setMenuIcon (String menuIcon) {
		this.menuIcon =  menuIcon;
	}
	
	public String getMenuDesc () {
		return this.menuDesc;
	}
	
	public void setMenuDesc (String menuDesc) {
		this.menuDesc =  menuDesc;
	}
	
	public String getMenuUrl () {
		return this.menuUrl;
	}
	
	public void setMenuUrl (String menuUrl) {
		this.menuUrl =  menuUrl;
	}
	
	public String getAuthPerms () {
		return this.authPerms;
	}
	
	public void setAuthPerms (String authPerms) {
		this.authPerms =  authPerms;
	}
	
	public Long getCreateTime () {
		return this.createTime;
	}
	
	public void setCreateTime (Long createTime) {
		this.createTime =  createTime;
	}
	
	public Long getUpdateTime () {
		return this.updateTime;
	}
	
	public void setUpdateTime (Long updateTime) {
		this.updateTime =  updateTime;
	}

	public List<Menu> getSubList() {
		return subList;
	}

	public void setSubList(List<Menu> subList) {
		this.subList = subList;
	}

	@Override
	public String toString () {
		StringBuffer entityStirngBuffer = new StringBuffer();
		entityStirngBuffer.append("menuId = " +  this.getMenuId() + "\n");
		entityStirngBuffer.append("menuCode = " +  this.getMenuCode() + "\n");
		entityStirngBuffer.append("menuType = " +  this.getMenuType() + "\n");
		entityStirngBuffer.append("orgId = " +  this.getOrgId() + "\n");
		entityStirngBuffer.append("menuStatus = " +  this.getMenuStatus() + "\n");
		entityStirngBuffer.append("isDel = " +  this.getIsDel() + "\n");
		entityStirngBuffer.append("menuOrder = " +  this.getMenuOrder() + "\n");
		entityStirngBuffer.append("menuLevel = " +  this.getMenuLevel() + "\n");
		entityStirngBuffer.append("isParent = " +  this.getIsParent() + "\n");
		entityStirngBuffer.append("menuPid = " +  this.getMenuPid() + "\n");
		entityStirngBuffer.append("menuName = " +  this.getMenuName() + "\n");
		entityStirngBuffer.append("aliasName = " +  this.getAliasName() + "\n");
		entityStirngBuffer.append("menuIcon = " +  this.getMenuIcon() + "\n");
		entityStirngBuffer.append("menuDesc = " +  this.getMenuDesc() + "\n");
		entityStirngBuffer.append("menuUrl = " +  this.getMenuUrl() + "\n");
		entityStirngBuffer.append("authPerms = " +  this.getAuthPerms() + "\n");
		entityStirngBuffer.append("createTime = " +  this.getCreateTime() + "\n");
		entityStirngBuffer.append("updateTime = " +  this.getUpdateTime() + "\n");
		return entityStirngBuffer.toString();
	}
	
}